1. Field of the Invention
This invention relates to data exchange adapters for use in exchanging data between a server and a backend application and more particularly relates to automatically transforming bidirectional format values in a data set prior to an exchange between a server and a backend application.
2. Description of the Related Art
The ability to seamlessly integrate the various applications and technologies necessary to perform tasks essential to the running of a business is known as business integration. Data exchange adapters facilitate business integration by allowing sets of data to be exchanged, seamlessly, among various applications and technologies. The Java 2 Enterprise Edition (J2EE) standard defines a standard approach to building these data exchange adapters as outlined in the J2EE connector architecture (JCA) specification.
Advanced implementations of data exchange adapters include an application module with a Data Exchange Service Programming Interface (DESPI) running on a Data Exchange Service Module (DESM) that is metadata-driven. The DESM is not hard-coded to perform unique transforms based on a particular application, technology, or object type. Rather, the DESM discovers the structure of a data set from the representation of the data set in associated metadata. In one embodiment, at build time, the DESM constructs access methods for managing the data set from associated metadata. At runtime, a connector component uses the access methods generated by the DESM to access elements of the data set and execute, on those elements, instructions for operations carried by the data set with application or technology specific methods embedded in the connector component.
Metadata used to define data sets contains a string of five letters known as a bidirectional format. The bidirectional format drives the processing of text data within the associated data set, according to the values in each position of the five-letter string comprising the bidirectional format. For example, a letter in the second position of the five-position format string determines whether text is processed from left to right, as is the case with English, or right to left, as is the case with Hebrew.
In order to accomplish business integration, a server makes a data set available to various applications and technologies. However, the bidirectional format required by a backend application or technology may differ from the bidirectional format required by the server. For example, servers may operate on a single, common standard for bidirectional format, such as a Windows™ bidirectional format. Therefore, the bidirectional format required on a backend application or technology may differ from the bidirectional format employed by the server.
Consistency requires transforming the text data of a data set as the text data is passed between the differing bidirectional contexts of a server and that of backend applications and/or technologies. Previous solutions rely upon the building of an application or technology specific transform within a connector component specific to a single application or technology. With this approach, multiple applications and technologies require the writing of code for several bidirectional format transforms, one for each application and for each technology having a different bidirectional format. Generating several transforms creates complexity that can lead to integration problems, debugging problems, and difficulty in assigning development tasks.
DESPI, in some embodiments running on a DESM, simplifies the way in which text data may be transformed to a context appropriate bidirectional format. Because the access methods generated by the DESM are application and technology neutral, the access methods may be used to create a single transform that can automatically transform text in a data set to make the text bidirectionally appropriate to its context.